/* Exemplifica o processo de declarar que um método pode lançar
 * uma exceção e sua chamada com o tratamento, que é obrigatório */
class ModeloBunnekkaException{
	public void executa(String verificador) throws BunnekkaException{
		if(verificador.equals("OK")){
			System.out.println("OK !");
		}
		else{
			throw new BunnekkaException();
		}
	}
	
	public void executa(boolean verificador) throws BunnekkaException,
		Exception
	{
		if(verificador){
			System.out.println("OK !");
		}
		else{
			throw new BunnekkaException();
		}
	}
}

class TesteBunnekkaException{
	public static void main(String [] args){
		String teste = "OK";
		ModeloBunnekkaException modelo = new ModeloBunnekkaException();
		try{
		modelo.executa(teste);
		}catch(BunnekkaException exc){
			exc.printStackTrace();
		}
		
		try{
		modelo.executa(true);
		}catch(BunnekkaException exc){
			exc.printStackTrace();
		}catch(Exception exc){
			exc.printStackTrace();
		}
		
	}
}
